home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1995 April / Internet Tools.iso / infoserv / www / cern / doc / www-talk.archive.Z / www-talk.archive / text0188.txt < prev    next >
Encoding:
Text File  |  1992-11-30  |  2.2 KB  |  77 lines

  1. <!-- html.dtd - document type declaration subset for
  2.                 HyperText Markup Language as defined
  3.         by the World Wide Web project.
  4.  
  5.     15 Jul 92 by connolly@convex.com
  6.  
  7.     See also: http://info.cern.ch/hypertext/WWW/MarkUp/Tags.html
  8.   -->
  9.  
  10. <!--      Terminal symbols        -->
  11.  
  12. <!ENTITY lt "<">
  13. <!ENTITY gt ">">
  14. <!ENTITY amp "&">
  15.  
  16. <!-- some existing html uses these. I think they meant
  17.     &
  18.      in stead of 
  19.     &.
  20.      -->
  21. <!ENTITY lt. "<">
  22. <!ENTITY gt. ">">
  23. <!ENTITY amp. "&">
  24.  
  25. <!--    Non-ELEMENT symbols       -->
  26.  
  27. <!ENTITY % heading "H1|H2|H3|H4|H5|H6" >
  28. <!ENTITY % list "UL|OL|DIR|MENU|DL">
  29. <!ENTITY % text "P|#PCDATA">
  30. <!ENTITY % raw "XMP|LISTING">
  31. <!-- PlainText is more than 8 characters, and changing the
  32.      NAMELEN capacity involves including a lengthy SGML declaration
  33.      in every HTML file. Besides: the semantics of PlainText can't
  34.      be captured by real SGML anyway. -->
  35. <!ENTITY % body "%heading|%list|%text|%raw">
  36.  
  37. <!--     Document structure       -->
  38.  
  39. <!ELEMENT HTML    O O  ((TITLE? & NEXTID? & ISINDEX?), BODY, ADDRESS?)>
  40.  
  41. <!ELEMENT TITLE    - -  (#PCDATA)>
  42.  
  43. <!ELEMENT NEXTID - O EMPTY >
  44. <!ATTLIST NEXTID N NUMBER #REQUIRED>
  45. <!-- as noted in Tags.html, the conventional <NEXTID 10> is
  46.      illegal. Use <NEXTID N=10> to comply with this DTD. -->
  47.  
  48. <!ELEMENT ISINDEX - O EMPTY >
  49.  
  50. <!ELEMENT BODY O O ((%heading), (%body)+) +(A)>
  51. <!-- The BODY element is necessary to avoid mixed content
  52.      in the HTML element. Mixed content and optional elements
  53.      don't mix very well. -->
  54.  
  55. <!ELEMENT (%heading)    - -  (%text)+
  56.     --Tags.html says titles should fit on one line, but
  57.     the browser handles paragraph breaks inside headings
  58.     gracefully. -->
  59.  
  60. <!ELEMENT (MENU|UL|OL|DIR) - -  (LI+)>
  61.  
  62. <!ELEMENT DL    - -  ((DT, DD)+)>
  63.  
  64. <!ELEMENT LI    - O  (%text)+>
  65. <!ELEMENT DT    - O  (#PCDATA)+>
  66. <!ELEMENT DD    - O  (%text)+>
  67. <!ELEMENT ADDRESS - O (%text)+ +(A)>
  68. <!-- Tags.html says "This tag is for address information, signatures,
  69. etc, normally at the top or bottom of a document." Here, it is only
  70. allowed at the end of a document. -->
  71.  
  72. <!ELEMENT (%raw) - -  CDATA>
  73. <!-- BUG:
  74. tags.html says that you can put anything but </XMP> in the
  75. text of an XMP element. SGML says that ETAGO, "</" ends a CDATA
  76. section.
  77.